home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 4
/
Aminet 4 - November 1994.iso
/
aminet
/
comm
/
cnet
/
lands051c.lha
/
BLCEDIT
< prev
next >
Wrap
Text File
|
1994-02-16
|
9KB
|
198 lines
/* BATTLE LANDS CHARACTER EDITOR */
/* By Wayne Stewart */
options results
signal on error
signal on syntax
p='###PANIC'
path='pfiles:battlelands/users/stats/'
lpath='pfiles:battlelands/users/'
tt=transmit
sfi=sendfile
sx=sendstring
begin:
tt 'f1n2ceHere is a list of the Battlers you may editn1'
call open(1,lpath||'battlers','r')
do until eof(1)=1
battler=readln(1)
user=readln(1)
if battler~='' then do;tt 'caPLAYER:cb' left(user' ',20)'ccWARRIOR''S NAME:cf' left(battler' ',30);end
end
call close(1)
query 'n1caSelect the cd^c9PLAYERcd^ caname you wish to editc9 [Return=Quit]n2cb>>> '
ans=upper(result)
if ans=p then exit
if ans='Q' then exit
if ans='' then exit
if exists(path||ans)=1 then do;call open(1,path||ans);do i=1 to 110; stat.i=readln(1);end;call close(1);call view;end
tt 'n1caYou must have mispelled that..w2'
call begin
view:
tt 'f1caThere are c9110ca character flags in c9Battle Landsca. Be careful which ones you'
tt 'change and how you change them because some are clearly numbers and some '
tt 'require Yes/No flags. Issuing a faulty change could have disasterous results'
tt 'on the edited character...'
tt 'n1cbFILE OF:cc' ans
tt 'n1cb1. caName :cf' stat.1
tt 'cb2. caMoney :cf' stat.2
tt 'cb3. caHealth :cf' stat.3
tt 'cb4. caMax Health:cf' stat.4
tt 'cb5. caStrength :cf' stat.5
tt 'cb6. caAgility :cf' stat.6
tt 'cb7. caEndurance :cf' stat.7
tt 'cb8. caMental :cf' stat.8
tt 'cb9. caExperience:cf' stat.9
tt 'cb10. caLevel :cf' stat.10
tt 'cb11. caClass :cf' stat.11
tt 'cb12. caRace :cf' stat.12
query 'n1ceINPUT THE NUMBER YOU WISH TO CHANGE OR c9Nce FOR CBNEXT PAGEcd>>> '
num=upper(result)
if num=p then exit
if num='N' then signal next1
if num='Q' then exit
if num<1 | num>12 then signal view
query 'n1caWhat do you wish to changecf' stat.num'ca to?c9 '
new=upper(result)
if new=p then exit
if new='' then signal view
stat.num=new
call view
next1:
tt 'f1cbFILE OF:cc' ans
tt 'n1cb13. caWeapon :cf' stat.13
tt 'cb14. caArmor :cf' stat.14
tt 'cb15. caMagic Rating:cf' stat.15
tt 'cb16. caMax Magic R :cf' stat.16
tt 'N1c9DOEScf' stat.1 'c9HAVE THE FOLLOWING SPELLS?'
tt 'n1cb17. caElectrostorm:cf' left(stat.17' ',3) ' cb27. caLightning :cf' left(stat.27' ',3)
tt 'cb18. caMental Punch:cf' left(stat.18' ',3) ' cb28. caMissile :cf' left(stat.28' ',3)
tt 'cb19. caLow Heal :cf' left(stat.19' ',3) ' cb29. caNuke :cf' left(stat.29' ',3)
tt 'cb20. caLow Blast :cf' left(stat.20' ',3) ' cb30. caHigh Nuke :cf' left(stat.30' ',3)
tt 'cb21. caLow Shield :cf' left(stat.21' ',3) ' cb31. caDevastate :cf' left(stat.31' ',3)
tt 'cb22. caMuscle Spell:cf' left(stat.22' ',3) ' cb32. caHeal All :cf' left(stat.32' ',3)
tt 'cb23. caHigh Heal :cf' left(stat.23' ',3) ' cb34. caRage :cf' left(stat.34' ',3)
tt 'cb24. caHigh Blast :cf' left(stat.24' ',3) ' cb35. caBecome Steel:cf' left(stat.35' ',3)
tt 'cb25. caHigh Shield :cf' left(stat.25' ',3) ' c9NOTE: Flag cf33 c9is not a magic flag as'
tt 'cb26. caMetal Storm :cf' left(stat.26' ',3) ' c9originally intended. It can be found later!!!'
query 'n1ceINPUT THE NUMBER YOU WISH TO CHANGE OR c9Nce FOR CBNEXT PAGEcd>>> '
num=upper(result)
if num=p then exit
if num='N' then signal next2
if num='Q' then exit
if num=33 then signal next1
if num<13 | num>35 then signal next1
query 'n1caWhat do you wish to changecf' stat.num'ca to?c9 '
new=upper(result)
if new=p then exit
if new='' then signal next1
stat.num=new
call next1
next2:
tt 'f1cbFILE OF:cc' ans
tt 'n1c9NOTE: Altering the possession of chips will not alter any stats.'
tt 'These stats are altered at the time the chips are purchased only!!!'
tt 'n1cb36. caMuscle Chip :cf' stat.36
tt 'cb37. caPhysical Chip:cf' stat.37
tt 'cb38. caLink Chip :cf' stat.38
tt 'cb39. caMental Chip :cf' stat.39
tt 'cb40. caKad Chip :cf' stat.40
tt 'cb41. caPirate Chip :cf' stat.41
tt 'cb42. caMedkit :cf' stat.42
tt 'cb43. caMedkit Uses :cf' left(stat.43' ',3) ' cc(changing this will only effect the first medkit)'
tt 'cb44. caInfo Goggles :cf' stat.44
tt 'cb45. caClimb Boots :cf' stat.45
tt 'n1c9Combat skills for cf' ans
tt 'n1cb46. caARMOR CLASS :cf' left(stat.46' ',4) ' cc(the higher this number the better)'
tt 'cb47. caTo Hit AC 0 :cf' left(stat.47' ',4) ' cc(the lower this number the better)'
query 'n1ceINPUT THE NUMBER YOU WISH TO CHANGE OR c9Nce FOR CBNEXT PAGEcd>>> '
num=upper(result)
if num=p then exit
if num='N' then signal next3
if num='Q' then exit
if num<36 | num>47 then signal next2
query 'n1caWhat do you wish to changecf' stat.num'ca to?c9 '
new=upper(result)
if new=p then exit
if new='' then signal next2
stat.num=new
call next2
next3:
tt 'f1cbFILE OF:cc' ans
tt 'n1c9NOTE: Altering the grade average for skills will have SOME effect in the'
tt 'game but most have effects on stats at the time they are acquired!!'
tt 'n1cb48. caAssault :cf' left(stat.48' ',4) 'cb% cb54. caMedical :cf' left(stat.54' ',4) 'cb%'
tt 'cb49. caMountaineer :cf' left(stat.49' ',4) 'cb% cb55. caReligion :cf' left(stat.55' ',4) 'cb%'
tt 'cb50. caComputers :cf' left(stat.50' ',4) 'cb% cb56. caRace Study :cf' left(stat.56' ',4) 'cb%'
tt 'cb51. caHistorian :cf' left(stat.51' ',4) 'cb% cb57. caDefense :cf' left(stat.57' ',4) 'cb%'
tt 'cb52. caSalesman :cf' left(stat.52' ',4) 'cb% cb58. caDisguise :cf' left(stat.58' ',4) 'cb%'
tt 'cb53. caGovernment :cf' left(stat.53' ',4) 'cb% cb59. caGambling :cf' left(stat.59' ',4) 'cb%'
query 'n1ceINPUT THE NUMBER YOU WISH TO CHANGE OR c9Nce FOR CBNEXT PAGEcd>>> '
num=upper(result)
if num=p then exit
if num='N' then signal next4
if num='Q' then exit
if num<48 | num>59 then signal next3
query 'n1caWhat do you wish to changecf' stat.num'ca to?c9 '
new=upper(result)
if new=p then exit
if new='' then signal next3
stat.num=new
call next3
next4:
tt 'f1cbFILE OF:cc' ans
tt 'n1c9CHANGING MAP#s AS WELL AS X & Y COULD PUT THE CHARACTER IN A WALL! BEWARE!!'
tt ''
tt 'cb60. caTotal Damage :cf' left(stat.60' ',4) 'cb72. caCast Spells? :cf' left(stat.72' ',4) 'cb84. caFull View Key:cf' left(stat.84' ',4)
tt 'cb61. caREG Task Flag:cf' left(stat.61' ',4) 'cb73. caAccount # :cf' left(stat.73' ',4) 'cb85. caForce Shield :cf' left(stat.85' ',4)
tt 'cb62. caWeapon Damage:cf' left(stat.62' ',4) 'cb74. caMars Key :cf' left(stat.74' ',4) 'cb86. caArmor Taken? :cf' left(stat.86' ',4)
tt 'cb63. caStrength Dam :cf' left(stat.63' ',4) 'cb75. caMercery Key :cf' left(stat.75' ',4) 'cb87. caTeleport Belt:cf' left(stat.87' ',4)
tt 'cb64. caNext Level xp:cf' left(stat.64' ',4) 'cb76. caApollo Key :cf' left(stat.76' ',4) 'cb88. caVault Money? :cf' left(stat.88' ',4)
tt 'cb65. caPlayer Fights:cf' left(stat.65' ',4) 'cb77. caChrome Key :cf' left(stat.77' ',4) 'cb89. caStrength Set?:cf' left(stat.89' ',4)
tt 'cb66. caMaximum of#65:cf' left(stat.66' ',4) 'cb78. caZone Key :cf' left(stat.78' ',4) 'cb90. caSteelDoor Key:cf' left(stat.90' ',4)
tt 'cb67. caTurns :cf' left(stat.67' ',4) 'cb79. caBonus HP/Levl:cf' left(stat.79' ',4) 'cb91. caMagic Bonus :cf' left(stat.91' ',4)
tt 'cb68. caMaximum Turns:cf' left(stat.68' ',4) 'cb80. caTransportPass:cf' left(stat.80' ',4) 'cb92. caBlack Market?:cf' left(stat.92' ',4)
tt 'cb69. caMap Location#:cf' left(stat.69' ',4) 'cb81. caUsed Pod? :cf' left(stat.81' ',4) 'cb93. caIn City # :cf' left(stat.93' ',4)
tt 'cb70. caX Location # :cf' left(stat.70' ',4) 'cb82. caInfo Helmet :cf' left(stat.82' ',4) 'cb94. caVisited City1:cf' left(stat.94' ',4)
tt 'cb71. caY Location # :cf' left(stat.71' ',4) 'cb83. caRad Suit :cf' left(stat.83' ',4) 'cb95. caVisited City2:cf' left(stat.95' ',4)
query 'n1ceINPUT THE NUMBER YOU WISH TO CHANGE OR c9Dce FOR CBDONEcd>>> '
num=upper(result)
if num=p then exit
if num='D' then signal savestats1
if num='Q' then exit
if num<60 | num>95 then signal next4
query 'n1caWhat do you wish to changecf' stat.num'ca to?c9 '
new=upper(result)
if new=p then exit
if new='' then signal next4
stat.num=new
call next4
savestats1:
tt 'n1caSome items were left from the list intentionally because if'
tt 'used they might cause endless loopsw3'
signal savestats
savestats:
call open(1,path||ans,'w')
do i=1 to 110
call writeln(1,stat.i)
end
call close(1)
call begin
error:
syntax:
call close(1)
call close(2)
call close(3)
tt 'c7Error at line 'sigl' in ???'
tt sourceline(sigl)
exit